#include <iostream>
using namespace std;
/**
 * Definition for a binary tree node.
 * struct TreeNode {
 *     int val;
 *     TreeNode *left;
 *     TreeNode *right;
 *     TreeNode() : val(0), left(nullptr), right(nullptr) {}
 *     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
 *     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}
 * };
 */
//class Solution {
//public:
//    void front(TreeNode* root,TreeNode*& prev,int& sum)
//    {
//        if(root==nullptr)
//            return;
//        if(prev&&prev->left==root)
//        {
//            if(root->left==root->right&&root->left==nullptr)
//                sum+=root->val;
//        }
//        prev=root;
//        front(root->left,prev,sum);
//        front(root->right,prev,sum);
//    }
//    int sumOfLeftLeaves(TreeNode* root) 
//    {
//        if(root==nullptr)
//            return 0;
//        TreeNode* prev=nullptr;
//        int sum=0;
//        front(root,prev,sum);
//        return sum;
//    }
//};
//class Solution {
//public:
//    vector<int> findDisappearedNumbers(vector<int>& nums) 
//    {
//        vector<int> v;
//        bitset<10*10*10*10*10> s;
//        for(auto e : nums)
//            s.set(e);
//        for(size_t i=1;i<=nums.size();i++)
//        {
//            if(!s.test(i))
//                v.push_back(i);
//        }
//        return v;
//    }
//};
//class Solution {
//public:
//    vector<int> findDuplicates(vector<int>& nums) 
//    {
//        vector<int> v;
//        bitset<10*10*10*10*10> s;
//        bitset<10*10*10*10*10> a;
//        for(auto e : nums)
//        {
//            if(a.test(e)==false)
//                a.set(e);
//            else
//            {
//                s.set(e);
//                a.reset(e);
//            }
//        }
//        for(size_t i=1;i<=nums.size();i++)
//        {
//            if(a.test(i)==false&&s.test(i)==true)
//                v.push_back(i);
//        }
//        return v;
//    }
//};
//class Solution {
//public:
//    int addDigits(int num) 
//    {
//        int sum=0;
//        again:
//        while(num)
//        {
//            sum=sum+num%10;
//            num/=10;
//        }
//        if(sum>=10)
//        {
//            num=sum;
//            sum=0;
//            goto again;
//        }
//        return sum;
//    }
//};
